
import {
  requestAPI, // 统一封装的请求函数
  baseUrl // 请求API地址
} from '../util/request'


/**
 * 请求商品分类列表
 */
export function getClassifyList(){
    return new Promise((reslove,reject)=>{
      requestAPI({
        // url:baseUrl+"userSearch/getCommodityType",
        url:baseUrl+"search/adminGetGoodsType",
      }).then(res=>{
          console.log("商品分类列表请求成功！",res);
          reslove(res.data)
      }).catch(err=>{
        reject(err)
      })
    })
}

/**
 * 请求指定页码、类型的 商品列表
 * @param {*} pageNum  商品页码
 * @param {*} pageSize  当前页码的商品数量
 * @param {*} type  商品类型
 */
export function getGoodsList(pageNum,pageSize,type){
    return new Promise((reslove,reject)=>{
      requestAPI({
        url:baseUrl+"userSearch/searchByType",
        data:{ 
          pageNum, 
          pageSize, 
          commodity_type: type
        }
      }).then(res=>{
        console.log("商品列表请求成功！",res);
        reslove(res.data)
      }).catch(err=>{
        reject(err)
      })
    })
}

/**
 * 获取指定id对应的商品详细信息
 * @param {*} id 商品ID
 */
export function getGoodsDetails(id){
  return new Promise((reslove,reject)=>{
    requestAPI({
      url:baseUrl + "userSearch/getCommodity",
      data:{ id }
    }).then(res=>{
      console.log("商品详细信息请求成功！",res);
      reslove(res.data)
    }).catch(err=>{
      reject(err)
    })
   })
}

/**
 * 请求搜索推荐列表
 */
export function getSearchRecommend(){
  return new Promise((reslove,reject)=>{
    requestAPI({
      url:baseUrl + "userSearch/searchRecommend"
    }).then(res=>{
      reslove(res.data)
      console.log("请求搜索推荐列表成功！",res);
    }).catch(err=>{
      console.log("请求搜索推荐列表失败！",err);
      reject(err)
    })
  })
}

/**
 *  根据指定的关键字搜索商品，并返回指定页码指定数量的商品列表
 * @param {*} pageNum  页码
 * @param {*} pageSize  一页商品的数量
 * @param {*} keyword  关键字
 */
export function getSearchResultList(pageNum,pageSize,keyword){
  return new Promise((reslove,reject)=>{
    requestAPI({
      url:baseUrl+"userSearch/searchByName",
      data:{
        pageNum,
        pageSize,
        commodity_name:keyword
      }
    }).then(res=>{
      console.log("搜索指定关键字商品成功！",res);
      reslove(res.data)
    }).catch((err)=>{
      console.log("搜索指定关键字商品失败！",err);
      reject(err)
    })
  })
}

/**
 * 提交用户触发的事件
 * 
 * @param {Object} event 事件对象 
 *     event =  {
 *                id:0,
 *                createTime:0,
 *                updateTime:0,
 *                token:"string",
 *                event:0
 *              } 
 * @param {String} token 令牌 
 */
export function submitUserEvent(event,token){
    wx.request({
      url: baseUrl + "statistic-center/statistic/event",
      method:"POST",
      header:{ 'X-Token':token },
      data:event, 
      success(res){
        console.log("已登录用户打开小程序事件统计成功",res);
      },
      fail(err){
        console.log("已登录用户打开小程序事件统计失败",err);
      }
    })
}
